'************************************************************************
'BVT test cases  
'************************************************************************

10433:Generate sync list with play count of 10. There is one license with less 10 play count.
TestSetEnhancedData(header1.xml) 
TestAddLicenseToStore(!3x8NSroVg4eXCzWqPU!BA==,{00000506-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS,"<ONACTION type=\"Play\"><CONDITION><![CDATA[secstate.PlayCount>0]]></CONDITION><ACTION><![CDATA[secstate.PlayCount--]]></ACTION></ONACTION><ONSTORE><ACTION><![CDATA[!exists(secstate.PlayCount)?secstate.PlayCount=8:0]]></ACTION></ONSTORE>",0,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG)
TestGenerateSyncListChallenge(Normal,10 play count criterion,-1 valid period criterion, !3x8NSroVg4eXCzWqPU!BA==, NULL,1,0,100,1,1) 

10434:Generate sync list with play count of 10. There are multiple licenses with less 10 play count. 
TestSetEnhancedData(header1.xml)
TestAddLicenseToStore(!3x8NSroVg4eXCzWqPU!BA==,{00000506-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS,"<ONACTION type=\"Play\"><CONDITION><![CDATA[secstate.PlayCount>0]]></CONDITION><ACTION><![CDATA[secstate.PlayCount--]]></ACTION></ONACTION><ONSTORE><ACTION><![CDATA[!exists(secstate.PlayCount)?secstate.PlayCount=8:0]]></ACTION></ONSTORE>",0,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG)
TestAddLicenseToStore(!4x8NSroVg4eXCzWqPU!BA==,{00000502-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS,"<ONACTION type=\"Play\"><CONDITION><![CDATA[secstate.PlayCount>0]]></CONDITION><ACTION><![CDATA[secstate.PlayCount--]]></ACTION></ONACTION><ONSTORE><ACTION><![CDATA[!exists(secstate.PlayCount)?secstate.PlayCount=8:0]]></ACTION></ONSTORE>",0,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG)
TestGenerateSyncListChallenge(Normal,10 play count criterion,-1 valid period criterion, !3x8NSroVg4eXCzWqPU!BA==, !4x8NSroVg4eXCzWqPU!BA==,5,0,2,2,2) 
 
10435:Generate sync list with play count of 10. One of the licenses with less 10 play count. 
TestSetEnhancedData(header1.xml)
TestAddLicenseToStore(!3x8NSroVg4eXCzWqPU!BA==,{00000506-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS,"<ONACTION type=\"Play\"><CONDITION><![CDATA[secstate.PlayCount>0]]></CONDITION><ACTION><![CDATA[secstate.PlayCount--]]></ACTION></ONACTION><ONSTORE><ACTION><![CDATA[!exists(secstate.PlayCount)?secstate.PlayCount=8:0]]></ACTION></ONSTORE>",0,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG)
TestAddLicenseToStore(!4x8NSroVg4eXCzWqPU!BA==,{00000502-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS,"<ONACTION type=\"Play\"><CONDITION><![CDATA[secstate.PlayCount>0]]></CONDITION><ACTION><![CDATA[secstate.PlayCount--]]></ACTION></ONACTION><ONSTORE><ACTION><![CDATA[!exists(secstate.PlayCount)?secstate.PlayCount=30:0]]></ACTION></ONSTORE>",0,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG)
TestGenerateSyncListChallenge(Normal,10 play count criterion,-1 valid period criterion, !3x8NSroVg4eXCzWqPU!BA==, !4x8NSroVg4eXCzWqPU!BA==,9,0,2,2,1) 

10436:Generate sync list with play count of 10. The licensess of the same KID with less 10 play count. LID is different
TestSetEnhancedData(header1.xml)
TestAddLicenseToStore(!3x8NSroVg4eXCzWqPU!BA==,{00000505-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS,"<ONACTION type=\"Play\"><CONDITION><![CDATA[secstate.PlayCount>0]]></CONDITION><ACTION><![CDATA[secstate.PlayCount--]]></ACTION></ONACTION><ONSTORE><ACTION><![CDATA[!exists(secstate.PlayCount)?secstate.PlayCount=7:0]]></ACTION></ONSTORE>",0,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG)
TestAddLicenseToStore(!3x8NSroVg4eXCzWqPU!BA==,{00000506-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS,"<ONACTION type=\"Play\"><CONDITION><![CDATA[secstate.PlayCount>0]]></CONDITION><ACTION><![CDATA[secstate.PlayCount--]]></ACTION></ONACTION><ONSTORE><ACTION><![CDATA[!exists(secstate.PlayCount)?secstate.PlayCount=2:0]]></ACTION></ONSTORE>",0,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG)
TestGenerateSyncListChallenge(Normal,10 play count criterion,-1 valid period criterion, !3x8NSroVg4eXCzWqPU!BA==,NULL,1,0,1,1,1) 

10440:Generate sync list with valid period of 10 days. There is one license having a valid period of less than 10 days 
TestSetEnhancedData(header1.xml) 
TestAddLicenseToStore(!3x8NSroVg4eXCzWqPU!BA==,{00000506-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS 0x40, "<ONACTION type=\"Play\"><CONDITION><![CDATA[1]]></CONDITION></ONACTION><ONSELECT><CONDITION><![CDATA[(machine.datetime >= secstate.ExpirationDate)]]></CONDITION></ONSELECT><ONSTORE><ACTION><![CDATA[!exists(secstate.ExpirationDate)?secstate.ExpirationDate=#",220,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG)
TestGenerateSyncListChallenge(Normal,-1 play count criterion,240 valid period criterion, !3x8NSroVg4eXCzWqPU!BA==,NULL,1,0,1,1,1) 
  
10441:Generate sync list with valid period of 10 days. There are multiple licenses having a valid period of less than 10 days 
TestSetEnhancedData(header1.xml) 
TestAddLicenseToStore(!3x8NSroVg4eXCzWqPU!BA==,{00000506-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS 0x40, "<ONACTION type=\"Play\"><CONDITION><![CDATA[1]]></CONDITION></ONACTION><ONSELECT><CONDITION><![CDATA[(machine.datetime >= secstate.ExpirationDate)]]></CONDITION></ONSELECT><ONSTORE><ACTION><![CDATA[!exists(secstate.ExpirationDate)?secstate.ExpirationDate=#",220,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG)
TestAddLicenseToStore(!4x8NSroVg4eXCzWqPU!BA==,{00000502-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS 0x40, "<ONACTION type=\"Play\"><CONDITION><![CDATA[1]]></CONDITION></ONACTION><ONSELECT><CONDITION><![CDATA[(machine.datetime >= secstate.ExpirationDate)]]></CONDITION></ONSELECT><ONSTORE><ACTION><![CDATA[!exists(secstate.ExpirationDate)?secstate.ExpirationDate=#",20,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG)
TestGenerateSyncListChallenge(Normal,-1 play count criterion,240 valid period criterion, !3x8NSroVg4eXCzWqPU!BA==, !4x8NSroVg4eXCzWqPU!BA==,5,0,2,2,2) 
  
10442:Generate sync list with valid period of 10 days. One of licenses having a valid period of less than 10 days 
TestSetEnhancedData(header1.xml) 
TestAddLicenseToStore(!3x8NSroVg4eXCzWqPU!BA==,{00000506-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS 0x40, "<ONACTION type=\"Play\"><CONDITION><![CDATA[1]]></CONDITION></ONACTION><ONSELECT><CONDITION><![CDATA[(machine.datetime >= secstate.ExpirationDate)]]></CONDITION></ONSELECT><ONSTORE><ACTION><![CDATA[!exists(secstate.ExpirationDate)?secstate.ExpirationDate=#",220,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG)
TestAddLicenseToStore(!4x8NSroVg4eXCzWqPU!BA==,{00000502-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS 0x40, "<ONACTION type=\"Play\"><CONDITION><![CDATA[1]]></CONDITION></ONACTION><ONSELECT><CONDITION><![CDATA[(machine.datetime >= secstate.ExpirationDate)]]></CONDITION></ONSELECT><ONSTORE><ACTION><![CDATA[!exists(secstate.ExpirationDate)?secstate.ExpirationDate=#",400,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG)
TestGenerateSyncListChallenge(Normal,-1 play count criterion,240 valid period criterion, !3x8NSroVg4eXCzWqPU!BA==, !4x8NSroVg4eXCzWqPU!BA==,9,0,2,2,1) 

10443:Generate sync list with valid period of 10 days. Licenses of the same KID having a valid period of less than 10 days 
TestSetEnhancedData(header1.xml) 
TestAddLicenseToStore(!3x8NSroVg4eXCzWqPU!BA==,{00000506-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS 0x40, "<ONACTION type=\"Play\"><CONDITION><![CDATA[1]]></CONDITION></ONACTION><ONSELECT><CONDITION><![CDATA[(machine.datetime >= secstate.ExpirationDate)]]></CONDITION></ONSELECT><ONSTORE><ACTION><![CDATA[!exists(secstate.ExpirationDate)?secstate.ExpirationDate=#",220,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG)
TestAddLicenseToStore(!3x8NSroVg4eXCzWqPU!BA==,{00000506-0001-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS 0x40, "<ONACTION type=\"Play\"><CONDITION><![CDATA[1]]></CONDITION></ONACTION><ONSELECT><CONDITION><![CDATA[(machine.datetime >= secstate.ExpirationDate)]]></CONDITION></ONSELECT><ONSTORE><ACTION><![CDATA[!exists(secstate.ExpirationDate)?secstate.ExpirationDate=#",200,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG)
TestGenerateSyncListChallenge(Normal,-1 play count criterion,240 valid period criterion, !3x8NSroVg4eXCzWqPU!BA==, NULL,1,0,1,1,1) 

10669:Generate sync list with play count of 10. There is one license with 10 play count, playbacked once.
TestSetEnhancedData(header1.xml) 
TestAddLicenseToStore(!3x8NSroVg4eXCzWqPU!BA==,{00000506-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS,"<ONACTION type=\"Play\"><CONDITION><![CDATA[secstate.PlayCount>0]]></CONDITION><ACTION><![CDATA[secstate.PlayCount--]]></ACTION></ONACTION><ONSTORE><ACTION><![CDATA[!exists(secstate.PlayCount)?secstate.PlayCount=10:0]]></ACTION></ONSTORE>",0,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG)
TestGenerateSyncListChallenge(Normal,10 play count criterion,-1 valid period criterion, !3x8NSroVg4eXCzWqPU!BA==, NULL,2,0,1,0,0)=-2147024637(0X80070103, DRM_E_NOMORE) 
TestPlayback(Play)
TestGenerateSyncListChallenge(Normal,10 play count criterion,-1 valid period criterion, !3x8NSroVg4eXCzWqPU!BA==, NULL,1,0,1,1,1) 

11699:Expired licenses should be deleted when generating synclist 
TestSetEnhancedData(header1.xml) 
TestAddLicenseToStore(!3x8NSroVg4eXCzWqPU!BA==,{00000506-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS 0x40, "<ONACTION type=\"Play\"><CONDITION><![CDATA[1]]></CONDITION></ONACTION><ONSELECT><CONDITION><![CDATA[ (machine.datetime > secstate.ExpirationDate)?(secstate.deleted=1;deletelicense();0):(!exists(secstate.deleted) && (app.minseclevel >= 1000?1:(secstate.drmreason=3;0)) && (machine.datetime <= secstate.ExpirationDate?1:(secstate.drmreason=1;0)))]]> </CONDITION></ONSELECT><ONSTORE><ACTION><![CDATA[!exists(secstate.ExpirationDate)?secstate.ExpirationDate=#",10,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG)
TestEnumLicense(!3x8NSroVg4eXCzWqPU!BA==, "", 1)
TestSynclistChangeTime(172800)
TestGenerateSyncListChallenge(Normal,1 play count criterion,1 valid period criterion, !3x8NSroVg4eXCzWqPU!BA==,NULL,1,0,1,1,1)
TestEnumLicense(!3x8NSroVg4eXCzWqPU!BA==, "", 0)

11700:ExpireAfterFirstUse License gets deleted when synclist is generated if the specified hours run out after first playing
TestSetEnhancedData(header1.xml) 
TestAddLicenseToStore(!3x8NSroVg4eXCzWqPU!BA==,{00000506-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS 0x40, "<ONACTION type=\"Play\"><CONDITION><![CDATA[1]]></CONDITION><ACTION><![CDATA[!exists(secstate.FirstUseDate)?secstate.FirstUseDate = machine.datetime:0]]></ACTION></ONACTION><ONCLOCKROLLBACK><ACTION><![CDATA[secstate.OldSaveTime<secstate.global.saveddatetime?secstate.OldSaveTime=secstate.global.saveddatetime:0]]></ACTION></ONCLOCKROLLBACK><ONSELECT><CONDITION><![CDATA[((exists(secstate.FirstUseDate)&&datediff(\"h\", secstate.FirstUseDate, machine.datetime) >= 2))?(secstate.deleted=1;deletelicense();0):(!exists(secstate.deleted) && (app.minseclevel >= 1000?1:(secstate.drmreason=3;0)) && machine.datetime >= secstate.OldSaveTime && (!exists(secstate.FirstUseDate) || datediff(\"h\", secstate.FirstUseDate, machine.datetime) < 2))]]></CONDITION></ONSELECT><ONSTORE><ACTION><![CDATA[!exists(secstate.OldSaveTime)?secstate.OldSaveTime=machine.datetime:0;!exists(secstate.HoursFromFirstUse)?secstate.HoursFromFirstUse=2:0;!exists(secstate.MinAppSecLevel)?secstate.MinAppSecLevel=100:0]]></ACTION></ONSTORE>",10,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG)
'TestPlayback(Play)
'TestSynclistChangeTime(172800)
'TestGenerateSyncListChallenge(Normal,1 play count criterion,1 valid period criterion, !3x8NSroVg4eXCzWqPU!BA==,NULL,1,0,1,1,1)
'TestEnumLicense(!3x8NSroVg4eXCzWqPU!BA==, "", 0)
 
 
-------------------BVT ends here--------------------------
  
'************************************************************************
'Functional test cases  
'************************************************************************

11692:Generate sync list with play count of 10. There are multiple licenses with less 10 play count. 
TestSetEnhancedData(header1.xml)
TestAddLicenseToStore(!3x8NSroVg4eXCzWqPU!BA==,{00000506-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS,"<ONACTION type=\"Play\"><CONDITION><![CDATA[secstate.PlayCount>0]]></CONDITION><ACTION><![CDATA[secstate.PlayCount--]]></ACTION></ONACTION><ONSTORE><ACTION><![CDATA[!exists(secstate.PlayCount)?secstate.PlayCount=8:0]]></ACTION></ONSTORE>",0,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG)
TestAddLicenseToStore(!4x8NSroVg4eXCzWqPU!BA==,{00000502-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS,"<ONACTION type=\"Play\"><CONDITION><![CDATA[secstate.PlayCount>0]]></CONDITION><ACTION><![CDATA[secstate.PlayCount--]]></ACTION></ONACTION><ONSTORE><ACTION><![CDATA[!exists(secstate.PlayCount)?secstate.PlayCount=8:0]]></ACTION></ONSTORE>",0,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG)
TestGenerateSyncListChallenge(Normal,10 play count criterion,-1 valid period criterion, !3x8NSroVg4eXCzWqPU!BA==, !4x8NSroVg4eXCzWqPU!BA==,9,0,1,1,1) 
TestGenerateSyncListChallenge(Normal,10 play count criterion,-1 valid period criterion, !3x8NSroVg4eXCzWqPU!BA==, !4x8NSroVg4eXCzWqPU!BA==,6,1,10,2,1) 

10671:Generate sync list with play count of 10. There is one license with 12 play count, playbacked once.
TestSetEnhancedData(header1.xml) 
TestAddLicenseToStore(!3x8NSroVg4eXCzWqPU!BA==,{00000506-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS,"<ONACTION type=\"Play\"><CONDITION><![CDATA[secstate.PlayCount>0]]></CONDITION><ACTION><![CDATA[secstate.PlayCount--]]></ACTION></ONACTION><ONSTORE><ACTION><![CDATA[!exists(secstate.PlayCount)?secstate.PlayCount=12:0]]></ACTION></ONSTORE>",0,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG)
TestPlayback(Play)
TestGenerateSyncListChallenge(Normal,10 play count criterion,-1 valid period criterion, !3x8NSroVg4eXCzWqPU!BA==, NULL,2,0,1,0,0)=-2147024637(0X80070103, DRM_E_NOMORE)
 
10670:Generate sync list with play count of 1. There is one license with 1 play count, playbacked once.
TestSetEnhancedData(header1.xml) 
TestAddLicenseToStore(!3x8NSroVg4eXCzWqPU!BA==,{00000506-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS,"<ONACTION type=\"Play\"><CONDITION><![CDATA[secstate.PlayCount>0]]></CONDITION><ACTION><![CDATA[secstate.PlayCount--]]></ACTION></ONACTION><ONSTORE><ACTION><![CDATA[!exists(secstate.PlayCount)?secstate.PlayCount=1:0]]></ACTION></ONSTORE>",0,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG)
TestPlayback(Play)
TestGenerateSyncListChallenge(Normal,1 play count criterion,-1 valid period criterion, !3x8NSroVg4eXCzWqPU!BA==, NULL,1,0,1,1,1) 
  
10437:Generate sync list with play count of 10. There is one license with more 10 play count. No license meeds the criterion 
TestSetEnhancedData(header1.xml)
TestAddLicenseToStore(!3x8NSroVg4eXCzWqPU!BA==,{00000506-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS,"<ONACTION type=\"Play\"><CONDITION><![CDATA[secstate.PlayCount>0]]></CONDITION><ACTION><![CDATA[secstate.PlayCount--]]></ACTION></ONACTION><ONSTORE><ACTION><![CDATA[!exists(secstate.PlayCount)?secstate.PlayCount=28:0]]></ACTION></ONSTORE>",0,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG)
TestGenerateSyncListChallenge(Normal,10 play count criterion,-1 valid period criterion, !3x8NSroVg4eXCzWqPU!BA==, NULL,2,0,1,0,0)=-2147024637(0X80070103, DRM_E_NOMORE) 

10438:Generate sync list with play count of 10. Store is empty. 
TestSetEnhancedData(header1.xml)
TestGenerateSyncListChallenge(Normal,10 play count criterion,-1 valid period criterion, NULL,NULL,0,0,1,0,0)=-2147024637(0X80070103, DRM_E_NOMORE) 
  
10439:Generate sync list with play count of 10. There are licenses with play count of 9, 10 and 11.
TestSetEnhancedData(header1.xml) 
TestAddLicenseToStore(!3x8NSroVg4eXCzWqPU!BA==,{00000506-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS,"<ONACTION type=\"Play\"><CONDITION><![CDATA[secstate.PlayCount>0]]></CONDITION><ACTION><![CDATA[secstate.PlayCount--]]></ACTION></ONACTION><ONSTORE><ACTION><![CDATA[!exists(secstate.PlayCount)?secstate.PlayCount=9:0]]></ACTION></ONSTORE>",0,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG)
TestGenerateSyncListChallenge(Normal,10 play count criterion,-1 valid period criterion, !3x8NSroVg4eXCzWqPU!BA==,NULL,1,0,1,1,1) 
TestSyncListReset(1)
TestSetEnhancedData(header1.xml) 
TestAddLicenseToStore(!3x8NSroVg4eXCzWqPU!BA==,{00000506-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS,"<ONACTION type=\"Play\"><CONDITION><![CDATA[secstate.PlayCount>0]]></CONDITION><ACTION><![CDATA[secstate.PlayCount--]]></ACTION></ONACTION><ONSTORE><ACTION><![CDATA[!exists(secstate.PlayCount)?secstate.PlayCount=10:0]]></ACTION></ONSTORE>",0,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG)
TestGenerateSyncListChallenge(Normal,10 play count criterion,-1 valid period criterion, !3x8NSroVg4eXCzWqPU!BA==,NULL,2,0,1,0,0)=-2147024637(0X80070103, DRM_E_NOMORE) 
TestSyncListReset(1)
TestSetEnhancedData(header1.xml) 
TestAddLicenseToStore(!3x8NSroVg4eXCzWqPU!BA==,{00000506-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS,"<ONACTION type=\"Play\"><CONDITION><![CDATA[secstate.PlayCount>0]]></CONDITION><ACTION><![CDATA[secstate.PlayCount--]]></ACTION></ONACTION><ONSTORE><ACTION><![CDATA[!exists(secstate.PlayCount)?secstate.PlayCount=11:0]]></ACTION></ONSTORE>",0,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG)
TestGenerateSyncListChallenge(Normal,10 play count criterion,-1 valid period criterion, !3x8NSroVg4eXCzWqPU!BA==,NULL,2,0,1,0,0)=-2147024637(0X80070103, DRM_E_NOMORE) 
  
10444:Generate sync list with valid period of 10 days. Call generate sync list challenger repeatedly 
TestSetEnhancedData(header1.xml) 
TestAddLicenseToStore(!3x8NSroVg4eXCzWqPU!BA==,{00000506-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS 0x40, "<ONACTION type=\"Play\"><CONDITION><![CDATA[1]]></CONDITION></ONACTION><ONSELECT><CONDITION><![CDATA[(machine.datetime >= secstate.ExpirationDate)]]></CONDITION></ONSELECT><ONSTORE><ACTION><![CDATA[!exists(secstate.ExpirationDate)?secstate.ExpirationDate=#",220,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG)
TestGenerateSyncListChallenge(Normal,-1 play count criterion,240 valid period criterion, !3x8NSroVg4eXCzWqPU!BA==,NULL,1,0,1,1,1) 
TestGenerateSyncListChallenge(Normal,-1 play count criterion,240 valid period criterion, !3x8NSroVg4eXCzWqPU!BA==,NULL,1,0,1,1,1) 

10445:Generate sync list with valid period of 10 days. No license meets the criterion 
TestSetEnhancedData(header1.xml) 
TestAddLicenseToStore(!3x8NSroVg4eXCzWqPU!BA==,{00000506-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS 0x40, "<ONACTION type=\"Play\"><CONDITION><![CDATA[1]]></CONDITION></ONACTION><ONSELECT><CONDITION><![CDATA[(machine.datetime >= secstate.ExpirationDate)]]></CONDITION></ONSELECT><ONSTORE><ACTION><![CDATA[!exists(secstate.ExpirationDate)?secstate.ExpirationDate=#",420,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG)
TestGenerateSyncListChallenge(Normal,-1 play count criterion,240 valid period criterion, !3x8NSroVg4eXCzWqPU!BA==,NULL,2,0,1,0,0)=-2147024637(0X80070103, DRM_E_NOMORE) 
   
10446:Generate sync list with valid period of 10 days. The store is empty 
TestSetEnhancedData(header1.xml) 
TestGenerateSyncListChallenge(Normal,-1 play count criterion,240 valid period criterion, NULL,NULL,0,0,1,0,0)=-2147024637(0X80070103, DRM_E_NOMORE) 
   
10447:Generate sync list with valid period of 10 days. There are licenses with valid days of 9, 10 and 11.
TestSetEnhancedData(header1.xml) 
TestAddLicenseToStore(!3x8NSroVg4eXCzWqPU!BA==,{00000506-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS 0x40, "<ONACTION type=\"Play\"><CONDITION><![CDATA[1]]></CONDITION></ONACTION><ONSELECT><CONDITION><![CDATA[(machine.datetime >= secstate.ExpirationDate)]]></CONDITION></ONSELECT><ONSTORE><ACTION><![CDATA[!exists(secstate.ExpirationDate)?secstate.ExpirationDate=#",216,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG)
TestGenerateSyncListChallenge(Normal,-1 play count criterion,240 valid period criterion, !3x8NSroVg4eXCzWqPU!BA==,NULL,1,0,1,1,1) 
TestSyncListReset(1)
TestSetEnhancedData(header1.xml) 
TestAddLicenseToStore(!3x8NSroVg4eXCzWqPU!BA==,{00000506-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS 0x40, "<ONACTION type=\"Play\"><CONDITION><![CDATA[1]]></CONDITION></ONACTION><ONSELECT><CONDITION><![CDATA[(machine.datetime >= secstate.ExpirationDate)]]></CONDITION></ONSELECT><ONSTORE><ACTION><![CDATA[!exists(secstate.ExpirationDate)?secstate.ExpirationDate=#",220,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG)
TestGenerateSyncListChallenge(Normal,-1 play count criterion,240 valid period criterion, !3x8NSroVg4eXCzWqPU!BA==,NULL,1,0,1,1,1) 
TestSyncListReset(1)
TestSetEnhancedData(header1.xml) 
TestAddLicenseToStore(!3x8NSroVg4eXCzWqPU!BA==,{00000506-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS 0x40, "<ONACTION type=\"Play\"><CONDITION><![CDATA[1]]></CONDITION></ONACTION><ONSELECT><CONDITION><![CDATA[(machine.datetime >= secstate.ExpirationDate)]]></CONDITION></ONSELECT><ONSTORE><ACTION><![CDATA[!exists(secstate.ExpirationDate)?secstate.ExpirationDate=#",264,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG)
TestGenerateSyncListChallenge(Normal,-1 play count criterion,240 valid period criterion, !3x8NSroVg4eXCzWqPU!BA==,NULL,2,0,1,0,0)=-2147024637(0X80070103, DRM_E_NOMORE)
   
10448:Generate sync list with valid period of 10 days. There is one expired license 
TestSetEnhancedData(header1.xml) 
TestAddLicenseToStore(!3x8NSroVg4eXCzWqPU!BA==,{00000506-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS 0x40, "<ONACTION type=\"Play\"><CONDITION><![CDATA[1]]></CONDITION></ONACTION><ONSELECT><CONDITION><![CDATA[(machine.datetime >= secstate.ExpirationDate)]]></CONDITION></ONSELECT><ONSTORE><ACTION><![CDATA[!exists(secstate.ExpirationDate)?secstate.ExpirationDate=#",10,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG)
TestSynclistChangeTime(172800)
TestGenerateSyncListChallenge(Normal,1 play count criterion,1 valid period criterion, !3x8NSroVg4eXCzWqPU!BA==,NULL,1,0,1,1,1) 
  
10449:Generate sync list. There is one license with zero play count 
TestSetEnhancedData(header1.xml)
TestAddLicenseToStore(!3x8NSroVg4eXCzWqPU!BA==,{00000506-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS,"<ONACTION type=\"Play\"><CONDITION><![CDATA[secstate.PlayCount>0]]></CONDITION><ACTION><![CDATA[secstate.PlayCount--]]></ACTION></ONACTION><ONSTORE><ACTION><![CDATA[!exists(secstate.PlayCount)?secstate.PlayCount=0:0]]></ACTION></ONSTORE>",0,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG)
TestGenerateSyncListChallenge(Normal,-1 play count criterion,-1 valid period criterion, !3x8NSroVg4eXCzWqPU!BA==,NULL,1,0,1,1,1) 
   
10450:Generate sync list with valid period of 0xFFFFFFFF. All the licenses with various valid periods should be selected 
TestSetEnhancedData(header1.xml) 
TestAddLicenseToStore(!3x8NSroVg4eXCzWqPU!BA==,{00000506-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS 0x40, "<ONACTION type=\"Play\"><CONDITION><![CDATA[1]]></CONDITION></ONACTION><ONSELECT><CONDITION><![CDATA[(machine.datetime >= secstate.ExpirationDate)]]></CONDITION></ONSELECT><ONSTORE><ACTION><![CDATA[!exists(secstate.ExpirationDate)?secstate.ExpirationDate=#",100,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG)
TestAddLicenseToStore(!4x8NSroVg4eXCzWqPU!BA==,{00000502-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS 0x40, "<ONACTION type=\"Play\"><CONDITION><![CDATA[1]]></CONDITION></ONACTION><ONSELECT><CONDITION><![CDATA[(machine.datetime >= secstate.ExpirationDate)]]></CONDITION></ONSELECT><ONSTORE><ACTION><![CDATA[!exists(secstate.ExpirationDate)?secstate.ExpirationDate=#",200,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG)
TestGenerateSyncListChallenge(Normal,10 play count criterion,-1 valid period criterion, !3x8NSroVg4eXCzWqPU!BA==,!4x8NSroVg4eXCzWqPU!BA==,5,0,100,2,2) 
   
10451:Generate sync list with play count of 0xFFFFFFFF. All the licenses with various play counts should be selected 
TestSetEnhancedData(header1.xml) 
TestAddLicenseToStore(!3x8NSroVg4eXCzWqPU!BA==,{00000506-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS,"<ONACTION type=\"Play\"><CONDITION><![CDATA[secstate.PlayCount>0]]></CONDITION><ACTION><![CDATA[secstate.PlayCount--]]></ACTION></ONACTION><ONSTORE><ACTION><![CDATA[!exists(secstate.PlayCount)?secstate.PlayCount=100:0]]></ACTION></ONSTORE>",0,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG)
TestAddLicenseToStore(!4x8NSroVg4eXCzWqPU!BA==,{00000506-0000-0020-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS,"<ONACTION type=\"Play\"><CONDITION><![CDATA[secstate.PlayCount>0]]></CONDITION><ACTION><![CDATA[secstate.PlayCount--]]></ACTION></ONACTION><ONSTORE><ACTION><![CDATA[!exists(secstate.PlayCount)?secstate.PlayCount=1:0]]></ACTION></ONSTORE>",0,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG)
TestGenerateSyncListChallenge(Normal,-1 play count criterion,10 valid period criterion, !3x8NSroVg4eXCzWqPU!BA==,!4x8NSroVg4eXCzWqPU!BA==,5,0,2,2,2) 
 
10452:Generate sync list with play count and valid period of 0xFFFFFFFF. All the licenses with various play counts and vairous valid periods should be selected 
TestSetEnhancedData(header1.xml) 
TestAddLicenseToStore(!3x8NSroVg4eXCzWqPU!BA==,{00000506-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS,"<ONACTION type=\"Play\"><CONDITION><![CDATA[secstate.PlayCount>0]]></CONDITION><ACTION><![CDATA[secstate.PlayCount--]]></ACTION></ONACTION><ONSTORE><ACTION><![CDATA[!exists(secstate.PlayCount)?secstate.PlayCount=100:0]]></ACTION></ONSTORE>",0,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG)
TestAddLicenseToStore(!4x8NSroVg4eXCzWqPU!BA==,{00000502-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS 0x40, "<ONACTION type=\"Play\"><CONDITION><![CDATA[1]]></CONDITION></ONACTION><ONSELECT><CONDITION><![CDATA[(machine.datetime >= secstate.ExpirationDate)]]></CONDITION></ONSELECT><ONSTORE><ACTION><![CDATA[!exists(secstate.ExpirationDate)?secstate.ExpirationDate=#",200,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG)
TestGenerateSyncListChallenge(Normal,-1 play count criterion,-1 valid period criterion, !3x8NSroVg4eXCzWqPU!BA==,!4x8NSroVg4eXCzWqPU!BA==,5,0,2,2,2) 
   
11623:Generate sync list with play count of 1. There are one leaf with play count 1, and a root with play count 2. No kid is picked uo.
TestSetEnhancedData(header1.xml) 
'leaf with play count 1
TestAddLicenseToStore(!3x8NSroVg4eXCzWqPU!BA==,{00000506-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS,"<ONACTION type=\"Play\"><CONDITION><![CDATA[secstate.PlayCount>0]]></CONDITION><ACTION><![CDATA[secstate.PlayCount--]]></ACTION></ONACTION><ONSTORE><ACTION><![CDATA[!exists(secstate.PlayCount)?secstate.PlayCount=1:0]]></ACTION></ONSTORE>",0,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG, 1,Acl2BY3ITE0qe11DalmK0A==)
'root with play count 2
TestAddLicenseToStore(Acl2BY3ITE0qe11DalmK0A==,{00000506-0011-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS,"<ONACTION type=\"Play\"><CONDITION><![CDATA[secstate.PlayCount>0]]></CONDITION><ACTION><![CDATA[secstate.PlayCount--]]></ACTION></ONACTION><ONSTORE><ACTION><![CDATA[!exists(secstate.PlayCount)?secstate.PlayCount=2:0]]></ACTION></ONSTORE>",0,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG, 2)
TestGenerateSyncListChallenge(Normal,1 play count criterion,1 valid period criterion, !3x8NSroVg4eXCzWqPU!BA==, Acl2BY3ITE0qe11DalmK0A==,10,0,2,0,0)=-2147024637(0X80070103, DRM_E_NOMORE) 
   
11624:Generate sync list with play count of 2. There are one leaf with play count 1, and a root with play count 2. Only leaf is picked up.
TestSetEnhancedData(header1.xml) 
'leaf with play count 1
TestAddLicenseToStore(!3x8NSroVg4eXCzWqPU!BA==,{00000506-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS,"<ONACTION type=\"Play\"><CONDITION><![CDATA[secstate.PlayCount>0]]></CONDITION><ACTION><![CDATA[secstate.PlayCount--]]></ACTION></ONACTION><ONSTORE><ACTION><![CDATA[!exists(secstate.PlayCount)?secstate.PlayCount=1:0]]></ACTION></ONSTORE>",0,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG, 1,Acl2BY3ITE0qe11DalmK0A==)
'root with play count 2
TestAddLicenseToStore(Acl2BY3ITE0qe11DalmK0A==,{00000506-0011-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS,"<ONACTION type=\"Play\"><CONDITION><![CDATA[secstate.PlayCount>0]]></CONDITION><ACTION><![CDATA[secstate.PlayCount--]]></ACTION></ONACTION><ONSTORE><ACTION><![CDATA[!exists(secstate.PlayCount)?secstate.PlayCount=2:0]]></ACTION></ONSTORE>",0,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG, 2)
TestGenerateSyncListChallenge(Normal, 2 play count criterion,1 valid period criterion, !3x8NSroVg4eXCzWqPU!BA==, Acl2BY3ITE0qe11DalmK0A==,9,0,2,2,1) 

11625:Generate sync list with play count of 2. There are one leaf with play count 1, and a root with play count 2. Both kids are picked up after a play on leaf
TestSetEnhancedData(header1.xml) 
'leaf with play count 1
TestAddLicenseToStore(!3x8NSroVg4eXCzWqPU!BA==,{00000506-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS,"<ONACTION type=\"Play\"><CONDITION><![CDATA[secstate.PlayCount>0]]></CONDITION><ACTION><![CDATA[secstate.PlayCount--]]></ACTION></ONACTION><ONSTORE><ACTION><![CDATA[!exists(secstate.PlayCount)?secstate.PlayCount=1:0]]></ACTION></ONSTORE>",0,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG, 1,Acl2BY3ITE0qe11DalmK0A==)
'root with play count 2
TestAddLicenseToStore(Acl2BY3ITE0qe11DalmK0A==,{00000506-0011-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS,"<ONACTION type=\"Play\"><CONDITION><![CDATA[secstate.PlayCount>0]]></CONDITION><ACTION><![CDATA[secstate.PlayCount--]]></ACTION></ONACTION><ONSTORE><ACTION><![CDATA[!exists(secstate.PlayCount)?secstate.PlayCount=2:0]]></ACTION></ONSTORE>",0,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG, 2)
TestPlayback(Play)
TestGenerateSyncListChallenge(Normal, 2 play count criterion,1 valid period criterion, !3x8NSroVg4eXCzWqPU!BA==, Acl2BY3ITE0qe11DalmK0A==,5,0,100,2,2) 
 
11626:Generate sync list with play count of 1. There are one leaf with play count 5, and a root with play count 1. Root kid is picked up after a play on leaf
TestSetEnhancedData(header1.xml) 
'leaf with play count 5
TestAddLicenseToStore(!3x8NSroVg4eXCzWqPU!BA==,{00000506-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS,"<ONACTION type=\"Play\"><CONDITION><![CDATA[secstate.PlayCount>0]]></CONDITION><ACTION><![CDATA[secstate.PlayCount--]]></ACTION></ONACTION><ONSTORE><ACTION><![CDATA[!exists(secstate.PlayCount)?secstate.PlayCount=5:0]]></ACTION></ONSTORE>",0,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG, 1,Acl2BY3ITE0qe11DalmK0A==)
'root with play count 1
TestAddLicenseToStore(Acl2BY3ITE0qe11DalmK0A==,{00000506-0011-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS,"<ONACTION type=\"Play\"><CONDITION><![CDATA[secstate.PlayCount>0]]></CONDITION><ACTION><![CDATA[secstate.PlayCount--]]></ACTION></ONACTION><ONSTORE><ACTION><![CDATA[!exists(secstate.PlayCount)?secstate.PlayCount=1:0]]></ACTION></ONSTORE>",0,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG, 2)
TestPlayback(Play)
TestGenerateSyncListChallenge(Normal, 1 play count criterion,1 valid period criterion, !3x8NSroVg4eXCzWqPU!BA==, Acl2BY3ITE0qe11DalmK0A==,6,0,2,2,1) 
    
11627:Generate sync list with play count of 1. There are one leaf with play count 5, and a time bound root. Root kid is picked up after the root is expired. 
TestSetEnhancedData(header1.xml) 
'leaf with play count 5
TestAddLicenseToStore(!3x8NSroVg4eXCzWqPU!BA==,{00000506-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS,"<ONACTION type=\"Play\"><CONDITION><![CDATA[secstate.PlayCount>0]]></CONDITION><ACTION><![CDATA[secstate.PlayCount--]]></ACTION></ONACTION><ONSTORE><ACTION><![CDATA[!exists(secstate.PlayCount)?secstate.PlayCount=5:0]]></ACTION></ONSTORE>",0,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG, 1,Acl2BY3ITE0qe11DalmK0A==)
'root time bound 
TestAddLicenseToStore(Acl2BY3ITE0qe11DalmK0A==,{00000506-0011-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS 0x40, "<ONACTION type=\"Play\"><CONDITION><![CDATA[1]]></CONDITION></ONACTION><ONSELECT><CONDITION><![CDATA[(machine.datetime >= secstate.ExpirationDate)]]></CONDITION></ONSELECT><ONSTORE><ACTION><![CDATA[!exists(secstate.ExpirationDate)?secstate.ExpirationDate=#",10,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG,2)
TestSynclistChangeTime(172800)
TestGenerateSyncListChallenge(Normal, 1 play count criterion,1 valid period criterion, !3x8NSroVg4eXCzWqPU!BA==, Acl2BY3ITE0qe11DalmK0A==,6,0,2,2,1) 

11757:Generate sync list with play hour of 1. There are one root with play count 50, and a time bound leaf. Leaf kid is picked up after the leaf is expired. 
TestSetEnhancedData(header1.xml) 
'leaf time bound 
TestAddLicenseToStore(Acl2BY3ITE0qe11DalmK0A==,{00000506-0011-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS 0x40, "<ONACTION type=\"Play\"><CONDITION><![CDATA[1]]></CONDITION></ONACTION><ONSELECT><CONDITION><![CDATA[(machine.datetime >= secstate.ExpirationDate)]]></CONDITION></ONSELECT><ONSTORE><ACTION><![CDATA[!exists(secstate.ExpirationDate)?secstate.ExpirationDate=#",10,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG,1,Acl2BY3ITE0qe11DalmK0A==)
'root with play count 50
TestAddLicenseToStore(!3x8NSroVg4eXCzWqPU!BA==,{00000506-0000-0010-8000-00AA006D2EA4},64 OP_LICGEN_NO_DEFAULT_RIGHTS,"<ONACTION type=\"Play\"><CONDITION><![CDATA[secstate.PlayCount>0]]></CONDITION><ACTION><![CDATA[secstate.PlayCount--]]></ACTION></ONACTION><ONSTORE><ACTION><![CDATA[!exists(secstate.PlayCount)?secstate.PlayCount=50:0]]></ACTION></ONSTORE>",0,ERdtAxucAFKJnAWxuFQYuyVd3BAFR7N!PO8vPJWRPzxV0MaUNCXrSQ==,300RGKoeuuIsIX04ZRKnNVZVP3fFXjykdp0o2hRG, 2)
TestSynclistChangeTime(172800)
TestGenerateSyncListChallenge(Normal, 1 play count criterion,1 valid period criterion, Acl2BY3ITE0qe11DalmK0A==,!3x8NSroVg4eXCzWqPU!BA==,9,0,2,2,1) 
